package org.jsola.contract.vo;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.jsola.core.vo.BaseVO;

import java.util.Date;

import static org.jsola.contract.example.CategoryExample.E_APPENDIX_TYPE;
import static org.jsola.contract.example.CategoryExample.E_DESCRIPTION;
import static org.jsola.contract.example.CategoryExample.E_ENTERPRISE_SEAL_ID;
import static org.jsola.contract.example.CategoryExample.E_EXPIRE_DAYS;
import static org.jsola.contract.example.CategoryExample.E_FILE_TYPE;
import static org.jsola.contract.example.CategoryExample.E_GROUP_ID;
import static org.jsola.contract.example.CategoryExample.E_ISSUE;
import static org.jsola.contract.example.CategoryExample.E_IS_OPEN;
import static org.jsola.contract.example.CategoryExample.E_IS_SITE_UPDATE;
import static org.jsola.contract.example.CategoryExample.E_NAME;
import static org.jsola.contract.example.CategoryExample.E_REMARK;
import static org.jsola.contract.example.CategoryExample.E_SIGN_ORDER;
import static org.jsola.contract.example.CategoryExample.E_SIGN_SEAL_TYPE;
import static org.jsola.contract.example.CategoryExample.E_SIGN_TYPE;
import static org.jsola.contract.example.CategoryExample.E_SOURCE_ID;
import static org.jsola.contract.example.CategoryExample.E_SUBJECT_ID;
import static org.jsola.contract.example.CategoryExample.N_APPENDIX_TYPE;
import static org.jsola.contract.example.CategoryExample.N_DESCRIPTION;
import static org.jsola.contract.example.CategoryExample.N_ENTERPRISE_SEAL_ID;
import static org.jsola.contract.example.CategoryExample.N_EXPIRE_DAYS;
import static org.jsola.contract.example.CategoryExample.N_FILE_TYPE;
import static org.jsola.contract.example.CategoryExample.N_GROUP_ID;
import static org.jsola.contract.example.CategoryExample.N_ISSUE;
import static org.jsola.contract.example.CategoryExample.N_IS_OPEN;
import static org.jsola.contract.example.CategoryExample.N_IS_SITE_UPDATE;
import static org.jsola.contract.example.CategoryExample.N_NAME;
import static org.jsola.contract.example.CategoryExample.N_REMARK;
import static org.jsola.contract.example.CategoryExample.N_SIGN_ORDER;
import static org.jsola.contract.example.CategoryExample.N_SIGN_SEAL_TYPE;
import static org.jsola.contract.example.CategoryExample.N_SIGN_TYPE;
import static org.jsola.contract.example.CategoryExample.N_SOURCE_ID;
import static org.jsola.contract.example.CategoryExample.N_SUBJECT_ID;
import static org.jsola.core.example.BaseExample.E_GMT_CREATE;
import static org.jsola.core.example.BaseExample.E_GMT_MODIFIED;
import static org.jsola.core.example.BaseExample.E_ID;
import static org.jsola.core.example.BaseExample.N_GMT_CREATE;
import static org.jsola.core.example.BaseExample.N_GMT_MODIFIED;
import static org.jsola.core.example.BaseExample.N_ID;

/**
 * 合同类型
 *
 * @author JanusMix
 */
@EqualsAndHashCode(callSuper = true)
@ApiModel(description = "【合同类型】详情展示对象")
@Data
public class CategoryVO extends BaseVO {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(notes = N_ID, example = E_ID)
    private Long id;

    @ApiModelProperty(notes = N_IS_OPEN, example = E_IS_OPEN)
    private Boolean isOpen;

    @ApiModelProperty(notes = N_IS_SITE_UPDATE, example = E_IS_SITE_UPDATE)
    private Boolean isSiteUpdate;

    @ApiModelProperty(notes = N_GROUP_ID, example = E_GROUP_ID)
    private Long groupId;

    @ApiModelProperty(notes = N_SOURCE_ID, example = E_SOURCE_ID)
    private String sourceId;

    @ApiModelProperty(notes = N_SUBJECT_ID, example = E_SUBJECT_ID)
    private String subjectId;

    @ApiModelProperty(notes = N_NAME, example = E_NAME)
    private String name;

    @ApiModelProperty(notes = N_DESCRIPTION, example = E_DESCRIPTION)
    private String description;

    @ApiModelProperty(notes = N_REMARK, example = E_REMARK)
    private String remark;

    @ApiModelProperty(notes = N_ENTERPRISE_SEAL_ID, example = E_ENTERPRISE_SEAL_ID)
    private Long enterpriseSealId;

    @ApiModelProperty(notes = "企业名称", example = "xxx")
    private String enterpriseName;

    @ApiModelProperty(notes = N_SIGN_TYPE, example = E_SIGN_TYPE)
    private String signType;

    @ApiModelProperty(notes = N_SIGN_SEAL_TYPE, example = E_SIGN_SEAL_TYPE)
    private Integer signSealType;

    @ApiModelProperty(notes = N_EXPIRE_DAYS, example = E_EXPIRE_DAYS)
    private Integer expireDays;

    @ApiModelProperty(notes = N_SIGN_ORDER, example = E_SIGN_ORDER)
    private String signOrder;

    @ApiModelProperty(notes = N_FILE_TYPE, example = E_FILE_TYPE)
    private String fileType;

    @ApiModelProperty(notes = N_APPENDIX_TYPE, example = E_APPENDIX_TYPE)
    private String appendixType;

    @ApiModelProperty(notes = N_ISSUE, example = E_ISSUE)
    private Boolean issue;

    @ApiModelProperty(notes = N_GMT_CREATE, example = E_GMT_CREATE)
    private Date gmtCreate;

    @ApiModelProperty(notes = N_GMT_MODIFIED, example = E_GMT_MODIFIED)
    private Date gmtModified;



}

